package com.cudex.negocio.Manager;

import java.io.Serializable;
import java.util.List;

import javax.ejb.EJB;
import javax.ejb.Stateless;
import javax.ejb.TransactionAttribute;
import javax.ejb.TransactionAttributeType;

import org.apache.log4j.Logger;

import com.cudex.negocio.beans.Clientes;
import com.cudex.negocio.daos.IClientesDAO;

@Stateless
public class ManagerClienteBean implements Serializable, IManagerCliente {

	private static final long serialVersionUID = 4494410199454358279L;

	private final static Logger log = Logger.getLogger(ManagerClienteBean.class
			.getName());
	@EJB
	IClientesDAO clienteDao;

	@Override
	@TransactionAttribute(TransactionAttributeType.REQUIRES_NEW)
	public Boolean altaCliente(Clientes c) throws Exception {
		return clienteDao.altaCliente(c);

	}

	@Override
	public Boolean modCliente(Clientes c) throws Exception {

		if (clienteDao.modificarCliente(c) != null) {
			return true;
		} else {
			return false;
		}
	}

	@Override
	public Boolean eliminarTrabajo(Clientes c) throws Exception {
		// TODO Auto-generated method stub
		return null;
	}

	@Override
	public List<Clientes> buscarTodos() throws Exception {
		log.info("buscarTodos()");
		List<Clientes> res;
		res = clienteDao.buscarClientes();
		log.info("Cnt encontrados : " + res.size());
		return res;
	}

	@Override
	public Clientes buscarCliente(Clientes c) throws Exception {
		log.info("buscarCliente()");
		String nombre = c.getNombre();
		log.info("Buscando por nombre : " + nombre);
		return clienteDao.buscarCliente(c);
	}

}
